package com.ruoyi.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import com.ruoyi.business.core.BaseEntity;

/**
 * chat优惠券对象 biz_chat_coupons
 *
 * @author lxy
 * @date 2024-04-22
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName(value = "biz_chat_coupons")
public class BizChatCoupons extends BaseEntity {

    @TableId(type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("优惠券名称")
    @Excel(name = "优惠券名称")
    private String name;

    @ApiModelProperty("优惠券类型")
    @Excel(name = "优惠券类型", readConverterExp = "0=满减,1=折扣")
    private Integer type;

    @ApiModelProperty("优惠券开始有效期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "优惠券开始有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    @ApiModelProperty("优惠券结束有效期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "优惠券结束有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    @ApiModelProperty("兑换码")
    @Excel(name = "兑换码")
    private String redeemCode;

    @ApiModelProperty("单个人最多兑换次数")
    @Excel(name = "单个人最多兑换次数")
    private Integer redeemCount;

    @ApiModelProperty("优惠券状态")
    @Excel(name = "优惠券状态", readConverterExp = "0=可用,1=不可用")
    private String status;

    @ApiModelProperty("优惠券图片")
    @Excel(name = "优惠券图片")
    private String imageUrl;

    @ApiModelProperty("满减优惠券的减免金额(元)")
    @Excel(name = "满减优惠券的减免金额(元)")
    private BigDecimal discountAmount;

    @ApiModelProperty("折扣优惠券的折扣率(百分比)(暂时不用)")
    @Excel(name = "折扣优惠券的折扣率(百分比)(暂时不用)")
    private BigDecimal discountRate;

    @ApiModelProperty("满减优惠券的最低购物金额(元)")
    @Excel(name = "满减优惠券的最低购物金额(元)")
    private BigDecimal minPurchaseAmount;

    @TableLogic
    private String delFlag;

}
